﻿#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>

//int text()
//{
//	int n = 100;
//	return n;
//}
//
//
//
//int main()
//{
//	/*int a = 10;
//	int* pb = &a;
//	printf("%p\n", &a);
//	printf("%p\n", pb);
//	printf("%p\n", *pb);
//	printf("%p", a);*/
//
//	//printf("%d\130", 68);
//	int m = text();
//	printf("%d\n", m);
//	return 0;
//}



//void paixu(int arr[],int n)
//{
//	for (int i = 0; i < n; i++)
//	{
//		for (int j = 0; j<n; j++)
//		{
//			if (arr[j] < arr[j + 1])
//			{
//				int temp = arr[j + 1];
//				arr[j + 1] = arr[j];
//				arr[j] = temp;
//			}
//
//		}
//	}
//}
//
//int main()
//{
//	int arr[10] = { 1,2,3,4,5,6,7,8,9,0 };
//	int* pa = arr;
//	size_t n = sizeof(arr) / sizeof(arr[0]);
//	paixu(arr, n);
//	for (int i = 0; i < n; i++)
//	{
//		printf("%d ", arr[i]);
//	}
//}




//int main()
//{
//	int arr[3] = { 1,2,3 };
//	printf("%p\n", &arr[0]);
//	printf("%p\n", &arr[1]);
//	printf("%p\n", &arr[2]);
//	printf("%d\n", &arr[2]-&arr[0]);
//	printf("%d\n", &arr[0]-&arr[1]);
//	printf("%d\n", &arr[2]-&arr[0]);
//	printf("%p\n", &arr[2] - &arr[0]);
//	printf("%p\n", &arr[0] - &arr[1]);
//}

//#include<assert.h>
//int main()
//{
//	int* p = NULL;
//	assert(p != NULL);
//}


//传值调用
//jiaohuan(int* a, int* b)
//{
//	int temp = *b;
//	*b = *a;
//	*a = temp;
//}
//
//int main()
//{
//	int a=10, b=20;
//	printf("交换前：%d %d\n", a, b);
//	jiaohuan(&a,&b);
//	printf("交换后：%d %d\n", a, b);
//}


//int main()
//{
//	int arr[10] = { 0 };
//
//		//输⼊
//		int i = 0;
//	int sz = sizeof(arr) / sizeof(arr[0]);
//	//输⼊
//	int* p = arr;
//	for (i = 0; i < sz; i++)
//	{
//		scanf("%d", p + i);
//		//scanf("%d", arr+i);//也可以这样写
//	}
//	//输出
//	for (i = 0; i < sz; i++)
//	{
//		printf("%d ", *(p + i));
//	}
//	return 0;
//}

//text(int* arr)
//{
//	size_t r = sizeof(&arr) / sizeof(arr[0]);
//	printf("%d\n", r);
//}
//
//int main()
//{
//	int arr[3] = { 1,2,3 };
//	size_t r = sizeof(arr) / sizeof(arr[0]);
//	printf("%d\n", r);
//	text(&arr);
//
//}



//int main()
//{
//	int arr1[] = { 1,2,3,4,5 };
//	int arr2[] = { 2,3,4,5,6 };
//	int arr3[] = { 3,4,5,6,7 };
//	//数组名是数组⾸元素的地址，类型是int*的，就可以存放在parr数组中
//	int* parr[3] = { arr1, arr2, arr3 };
//	int i = 0;
//	int j = 0;
//	for (i = 0; i < 3; i++)
//	{
//		for (j = 0; j < 5; j++)
//		{
//			//printf("%d ", parr[i][j]);
//			printf("%d ", *(parr[i] + j));
//		}
//		printf("\n");
//	}
//}




//冒泡排序如下
//void paixu(int arr[], int ze)
//{
//	for (int i = 0; i < ze-1; i++)
//	{
//		int flag = 1;
//		for (int f = 0; f < ze -1- i; f++)
//		{
//			if (arr[f] > arr[f + 1])
//			{
//				int temp = arr[f];
//				arr[f] = arr[f + 1];
//				arr[f + 1] = temp;
//				flag = 0;
//			}
//			
//		}
//		if (flag == 1)
//		{
//			break;
//		}
//	}
//}
//void print(int arr[], int ze)
//{
//	for (int i = 0; i < ze; i++)
//	{
//		printf("%d ", arr[i]);
//	}
//}
//int main()
//{
//	int arr[10] = { 6,12,1,68,9,45,2,54,14,4 };
//	size_t ze= sizeof(arr) / sizeof(arr[0]);
//	paixu(arr, ze);
//	print(arr, ze);
//}